/**
 * 登录和授权模块
 */
define(function(require, exports, module) {

	function getUrlParms() {
		var args = {};
		var query = location.search.substring(1);// 获取查询串
		var pairs = query.split("&");// 在逗号处断开
		for (var i = 0; i < pairs.length; i++) {
			var pos = pairs[i].indexOf('=');// 查找name=value
			if (pos == -1)
				continue;// 如果没有找到就跳过
			var argname = pairs[i].substring(0, pos);// 提取name
			var value = pairs[i].substring(pos + 1);// 提取value
			// 解码
			args[argname] = decodeURIComponent(value);// 存为属性
		}
		return args;
	}

	require("jquery");
	var $ = jQuery;

	// 第一步：登录事件
	$("body")
			.on(
					"click",
					"#loginsubmit",
					function(event) {
						var postdata = $("#fm1").serialize();
						// 清空密码框
						$("#password").val("");
						$("msg").empty();
						$
								.post("data/login.do", postdata) ////////////lxf
								.done(
										function(data) {
											// 登录成功
											// 第二步：创建授权码
//https://172.20.8.44/auth-server/oauth2/login.html?client_id=2&redirect_uri=http%3A%2F%2F172.20.8.44%2Fbusiness%2Foauth2%2Fcallback%2F&state=%2Fbusiness%2F
//https://172.20.8.44/auth-server/oauth2/login.html?client_id=2&redirect_uri=http://172.20.8.44/business/oauth2/callback/&state=/business/
											$
													.post(
															"data/code.do", ////////////lxf
															{
																"client_id" : urlParms["client_id"]
															})
													.done(
															function(data) {
																// 成功，准备跳回到第三方
																// 构建URL参数
																var params = {
																	"code" : data.data
																};
																if (urlParms["state"]) {
																	params["state"] = urlParms["state"];
																}
																// 构建第三方应用URL
																var clientUrl = urlParms["redirect_uri"]
																		+ "?"
																		+ $
																				.param(params);
																// 跳转到第三方应用
																clientUrl = "index.html?"+$.param(params); ////////////lxf
																window.location.href = clientUrl;
															})
													.fail(
															function(jqxhr,
																	textStatus,
																	error) {
																// 失败
																$("#msg").text(jqxhr.responseJSON.msg)
															}).always(
															function() {
																// ajax执行结束时
															});
											//保存企业名称到cookie中
											$.cookie("carriername", $("#carriername").val());
										}).fail(
										function(jqxhr, textStatus, error) {
											// 登录失败
											$("#msg").text(jqxhr.responseJSON.msg)
										}).always(function() {
									// ajax执行结束时
								});
					});
	require("cookie");
	var carriername = $.cookie("carriername");
	if (carriername != null) {
		$("#carriername").val(carriername);
		//用户名获得焦点
		$("#username").focus();
	}
	// 分解URL参数
	var urlParms = getUrlParms();
/*
	var userinfoUrl = "../user/userinfo.do";
	$.getJSON(userinfoUrl).done(function(data) {
		// 成功
		if (data.code == 0) {
			alert("您已经登录！" + JSON.stringify(data.data));
		}
	}).fail(function(jqxhr, textStatus, error) {
		// 失败
	}).always(function() {
		// ajax执行结束时
	});

	// 检查此应用是否被当前用户授权
	var checkAuthrizationUrl = "../oauth2/check_authorization/"
			+ urlParms["client_id"] + ".do"
	$.getJSON(checkAuthrizationUrl).done(function(data) {
		// 成功
		if (data.code == 0) {
			alert("您已经授权此应用！" + JSON.stringify(data.data));
		}
	}).fail(function(jqxhr, textStatus, error) {
		// 失败
	}).always(function() {
		// ajax执行结束时
	});

	$(function() {
		// 获取客户端信息
		var clientInfoUrl = "../oauth2/client/info/" + urlParms["client_id"]
				+ ".do"
		$.getJSON(clientInfoUrl).done(function(data) {
			//
			$("#client_name").text(data.clientName);
			$("#client_desc").text(data.clientDesc);
		}).fail(function(jqxhr, textStatus, error) {
			// 失败
			alert("获取第三方应用信息失败!");
		}).always(function() {
			// ajax执行结束时
		});
	});
	*/
});